diff --git a/README.md b/README.md
index 7572040..fe020da 100644
--- a/README.md
+++ b/README.md
@@ -1,74 +1,9 @@
-Subtle Pelican Theme
+Pelican Subtle Giggi
 ====================
 
-[pelican-subtle](https://github.com/pR0Ps/pelican-subtle) is a responsive theme for [Pelican](http://getpelican.com), it is my take on Giulio Fidente's [pelican-svbhack](https://github.com/giulivo/pelican-svbhack) theme.
+This is a fork of [Subtle Pelican Theme](https://github.com/pR0Ps/pelican-subtle).
 
-## Demo
-
-You can see the theme in action on [my site](http://cmetcalfe.ca/) ([site source code](https://github.com/pR0Ps/website)).
-
-![theme screenshot](https://github.com/pR0Ps/pelican-subtle/raw/master/screenshot.png)
-
-## Features
-
-- Clean, responsive design. Scales to fit any screen
-- Fully HTML5 compliant
-- Fully usable without Javascript (although enabling it adds more functionality)
-- Ability to hide email addresses from spambots
-- Syntax highlighting for code blocks
-- Integrated Google Analytics
-- Custom sidebar links and social icons
-- Fuzzy date display (ex: "Posted 2 days ago") using Javascript
-- Disqus comment integration
-- Automatically minifies and compresses Javascript and CSS
-
-## Dependencies
-
-For automatic minification and compression of assets, this theme uses the
-[webassets](https://webassets.readthedocs.org/) package, along with `cssmin` for
-minifying css, `slimit` for compressing Javascript, and `libsass` for
-compiling the [SCSS](http://www.sass-lang.com) styles.
-
-- All these can be installed with `pip` by running `pip install -r requirements.txt`
-
-Additionally, to integrate the `webassets` package into pelican, the [pelican-assets plugin](https://github.com/pR0Ps/pelican-assets)
-is required. It's included in this repo as a submodule so it just needs to be
-activated in `pelicanconf.py`.
-
-- Add `"<theme dir>/plugins"` to the `PLUGIN_PATHS` list (or `os.path.join("<theme dir>", "plugins")` if you're feeling Pythonic)
-- Add `"assets"` to the `PLUGINS` list
-
-## Installing
-
-1. Clone [this repository](https://github.com/pR0Ps/pelican-subtle) making sure to get the submodules (ex: `git clone --recursive <repo>`)
-2. Install and configure the required dependencies (see above)
-3. Modify the `THEME` variable in `pelicanconf.py` to point to the cloned theme location
-4. Customize the theme using the options below
-
-## pelicanconf.py
-
-When developing locally, you may want to set `SITEURL` to something like `http://localhost:8000`
-
-This theme supports a number of custom variables:
-
-- `GOOGLE_ANALYTICS_ID`: Your Google Analytics UA-XXXXXXXX-X code (`None` to disable analytics).
-- `GOOGLE_ANALYTICS_PROP`: Your Google Analytics property name (`None` to disable analytics).
-- `DISPLAY_META_ABOVE_ARTICLE`: Set to `True` to display article information above the article (default is below).
-- `DISQUS_SITENAME`: Set this to enable Disqus comments on articles.
-- `DISQUS_COLLAPSED`: Set to `True` to have article comments hidden by default. Clicking a link on the page will load them.
-- `USER_LOGO_URL`: The image to display as the profile image. Can be local or a remote URL.
-- `TAGLINE`: The site's tagline. Rendered right below the user image.
-- `MANGLE_EMAILS`: If enabled, any emails in the `SOCIAL` or `LINKS` lists will be obfuscated in HTML and have their links generated by Javascript when the page loads.
-- `GLOBAL_KEYWORDS`: A list of strings that will be set as meta keywords for each page.
-- `FUZZY_DATES`: If `True`, uses [lw-timeago](https://github.com/pR0Ps/lw-timeago) to display fuzzy dates on articles (eg. 'Posted 3 months ago').
-
-## Authors
-
-pelican-subtle is authored by [pR0Ps](https://github.com/pR0Ps).
-
-pelican-svbhack is authored by [Giulio Fidente](https://github.com/giulivo).
-
-Pull requests welcome!
+Thanks for sharing!
 
 ## Licence
 ```
@@ -76,6 +11,7 @@
 Copyright (c) 2012 William Ting
 Copyright (c) 2013 Giulio Fidente
 Copyright (c) 2015 Carey Metcalfe
+Copyright (c) 2020 Luigi Santivetti
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
